home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / smaltalk / manchest.lha / MANCHESTER / manchester / 2.2 / takeuchi.st < prev    next >
Text File  |  1993-07-24  |  929b  |  34 lines

  1. "    NAME        takeuchi
  2.     AUTHOR        tph@cs.man.ac.uk
  3.     FUNCTION benchmark: triply recursive numerical filter 
  4.     ST-VERSIONS    2.2
  5.     PREREQUISITES     
  6.     CONFLICTS    
  7.     DISTRIBUTION      world
  8.     VERSION        1.1
  9.     DATE    22 Jan 1989
  10. SUMMARY    takeuchi
  11.     provides an implementation of ""Takeuchi's function, a
  12.     triply recursive numerical filter"", used as a benchmark for the
  13.     REKURSIV machine.(2.2). TPH
  14. "!
  15. 'From Smalltalk-80, Version 2.2 of July 4, 1987 on 9 February 1988 at 9:57:12 am'!
  16.  
  17.  
  18.  
  19. !Integer methodsFor: 'mathematical functions'!
  20.  
  21. takeuchiWith: y and: z
  22.     "Takeuchi's function a triply recursive numerical filter.  Used as a
  23.      benchmark for the RECURSIV machine. self is x."
  24.  
  25.     (y >= self)
  26.         ifTrue: [^z]
  27.         ifFalse: [
  28.             ^(((self - 1) takeuchiWith: y and: z) takeuchiWith:
  29.                 ((y - 1) takeuchiWith: z and: self) and:
  30.                 ((z - 1) takeuchiWith: self and: y))]
  31.  
  32.     "18 takeuchiWith: 12 and: 6."
  33.     "Time millisecondsToRun: [18 takeuchiWith: 12 and: 6]."! !
  34.